package olga.gorbatiuk.perdep.sorting.arrayfiller.impl;

import java.util.Arrays;
import java.util.Random;

import olga.gorbatiuk.perdep.sorting.arrayfiller.AbstractArrayFiller;
import olga.gorbatiuk.perdep.sorting.arrayfiller.ArrayFiller;

/**
 * @author Olga Gorbatiuk
 */
public class SortedArrayAscWithRandomLastElement extends AbstractArrayFiller
        implements ArrayFiller {

    /**
     * @see
     * olga.gorbatiuk.perdep.sorting.arrayfiller.ArrayFiller#getFilledArray(int,
     * int, int)
     */
    @Override
    public int[] getFilledArray(int min, int max, int size) {
        int[] array = getRandomlyFilledArray(min, max, size);
        Arrays.sort(array);
        setRandomValueForLastElement(array);
        return array;
    }

    private void setRandomValueForLastElement(int[] array) {
        array[array.length - 1] = (new Random()).nextInt();
    }
}
